﻿using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;
using Sinacor.Infra.UI.Common;

/// Historico:
/// Data : 10/08/2009
/// Autor: Felipe Barbosa Gonzalez
/// 7Comm Informativa   
/// Obs.: Criada todas propriedades da classe
namespace Sinacor.UI.Bovespa.Clientes.Model
{
    /// <summary>
    /// Classe que representa o Correspondente e é utilizada para carregar o resultado da pesquisa.
    /// </summary>
    [Serializable]
    public class Correspondente : BaseModel
    {
        private int? _codigo;
        private int? _codigoMembro;
        private bool _indicadorBroker;
        private string _nome;
        private string _nomeResumido;
        private decimal? _percentualComissao;

        /// <summary>
        /// Representa o código do cliente ao qual no cadastro de correspondente é interpretado como código do correspondente.
        /// </summary>
        public int? Codigo
        {
            get
            {
                return this._codigo;
            }
            set
            {
                this._codigo = value; this.OnPropertyChanged("Codigo");
            }
        }

        /// <summary>
        /// Representa o código de Membro do Correspondente.
        /// </summary>
        public int? CodigoMembroBovespa
        {
            get
            {
                return this._codigoMembro;
            }
            set
            {
                this._codigoMembro = value; this.OnPropertyChanged("CodigoMembroBovespa");
            }
        }

        /// <summary>
        /// Indicador Broker
        /// </summary>
        public bool IndicadorBroker
        {
            get
            {
                return this._indicadorBroker;
            }
            set
            {
                this._indicadorBroker = value; this.OnPropertyChanged("IndicadorBroker");
            }
        }

        /// <summary>
        /// Nome do Cliente
        /// </summary>
        public string Nome
        {
            get
            {
                return this._nome;
            }
            set
            {
                this._nome = value; this.OnPropertyChanged("Nome");
            }
        }

        /// <summary>
        /// Nome Resumido
        /// </summary>
        public string NomeResumidoCorrespondente
        {
            get
            {
                return this._nomeResumido;
            }
            set
            {
                this._nomeResumido = value; this.OnPropertyChanged("NomeResumidoCorrespondente");
            }
        }

        /// <summary>
        /// Percentual de comissão
        /// </summary>
        public decimal? PercentualComissao
        {
            get
            {
                return this._percentualComissao;
            }
            set
            {
                this._percentualComissao = value; this.OnPropertyChanged("PercentualComissao");
            }
        }
    }
}
